interface Props {
  name: string
  age: number
  gender: boolean
}

type TodoPrev = Extract<keyof Props, 'age' | 'gender'> // 等价于 type TodoPrev = "age" | "gender"
const todo: TodoPrev = 'age'
// type Extract<T, U> = T extends U ? T : never